calculate factorial without using loop in c